A Complete Transformational Toolkit for Compilers

نویسندگان

  • Jan A. Bergstra
  • T. B. Dinesh
  • John Field
  • Jan Heering
چکیده

In an earlier paper, one of the present authors presented a preliminary account of an equational logic called PIM. PIM is intended to function as a “transformational toolkit” to be used by compilers and analysis tools for imperative languages, and has been applied to such problems as program slicing, symbolic evaluation, conditional constant propagation, and dependence analysis. PIM consists of the untyped lambda calculus extended with an algebraic rewriting system that characterizes the behavior of lazy stores and generalized conditionals. A major question left open in the earlier paper was whether there existed a complete equational axiomatization of PIM’s semantics. In this paper, we answer this question in the affirmative for PIM’s core algebraic component, PIMt, under the assumption of certain reasonable restrictions on term formation. We systematically derive the complete PIM logic as the culmination of a sequence of increasingly powerful equational systems starting from a straightforward “interpreter” for closed PIM terms. CR Subject Classification (1991): D.3.4, I.2.2, F.3.2.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Implicit induction techniques for the verification of PIM - a transformational toolkit for compilers

The development of the proof techniques presented in this paper was inspired by a proof problem for Pim { a transformational toolkit for compilers. Pim consists of the untyped lambda calculus extended with an algebraic rewriting system that characterizes the behavior of lazy stores and generalized conditionals. The rst-order algebraic component of Pim has an !-complete conservative extension. S...

متن کامل

Code Generation for Just-in-Time Compiled Mobile Collector Agents

This paper describes MGEN/x86, a toolkit that simplifies the process of creating dynamic code generators and just-in-time (JIT) compilers for the x86 series of processor. MGEN produces pattern-matching code generators based on a userdefined sequence of rules and semantic action associated with each rule. MGEN includes a number of useful and interesting features such as a table driven macro comp...

متن کامل

A Formal Semantic Model to fit SIL for Transformational Design

SIL (SPRITE Input Language) is a single token signal flow graph representation developed as an intermediate format between specification languages and silicon compilers. This paper presents a part of a formal semantic model for SIL which is nicely intuitive because of the use of tables as mathematical representation of the semantics. Together with this semantic model SIL becomes a useful langua...

متن کامل

Towards Rigorous Compiler Implementation Verification

This paper sketches our approach to rigorously prove the correctness of a compiler executable down to its binary machine code implementation. We will emphasize the central r^ ole of partial program correctness and its preservation, which capture the intuitive correctness requirements for transformational programs and in particular for compilers on realistic machines. Vertical and horizontal com...

متن کامل

Formal Veri cation of Transformations on Dependency Graphs in Optimizing Compilers

Dependency graphs are used as intermediate representations in optimizing compilers and software-engineering. In a transformational design approach, optimization and reenement transformations are used to transform dependency-graph-based speciications at higher abstraction levels to those at lower abstraction levels. An informal representation would lead to subtle errors, making it diicult to gua...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1996